% -*- BibTeX -*-
% 
% Miscellaneous computer science bibliography entries.
% These should likely be better organized.


@Book{Knuth68,
   Key={Knuth, B* tree},
   Author={Donald E. Knuth},
   Publisher={Addison-Wesley},
   Title={The Art of Computer Programming, Volume 3},
   Year=1968,
   Address={Reading, Mass.}
}

@InCollection{KaehlerK83,
   Key={Kaehler, Krasner},
   Author={Ted Kaehler and Glenn Krasner},
   Booktitle={Smalltalk-80 --- Bits of History, Words of Advice},
   Publisher={Addison-Wesley},
   Title={LOOM --- Large Object-Oriented Memory for Smalltalk-80 Systems},
   Year=1983,
   Chapter=14,
   Editor={G. Krasner},
   Pages={251--270}
}

@Article{Parberry89,
  author = 	 "Ian Parberry",
  title = 	 "A guide for new referees in theoretical computer science",
  journal =	 "SIGACT News",
  year =	 1989,
  month =	 Nov
}

@Unpublished{Parberry90,
  author = 	 "Ian Parberry",
  title = 	 "A guide for new referees in theoretical computer science",
  note = 	 "Available via anonymous ftp from ftp.unt.edu:/pub/ian;
		  previously appeared in SIGACT News and Bulletin of the EATCS",
  year =	 1990,
  month =	 apr
}

@Unpublished{Parberry93,
  author = 	 "Ian Parberry",
  title = 	 "How to present a paper in theoretical computer science:
		  a speaker's guide for students",
  note = 	 "Available via anonymous ftp from ftp.unt.edu:/pub/ian;
		  previously appeared in SIGACT News and Bulletin of the EATCS",
  OPTcrossref =  "",
  OPTkey = 	 "",
  OPTyear = 	 "",
  OPTmonth = 	 "",
  OPTannote = 	 ""
}

@Article{BlumFPRT73,
  author = 	 "Manuel Blum and Robert W. Floyd and Vaughan Pratt and
		  Ronald L. Rivest and Robert E. Tarjan",
  title = 	 "Time bounds for selection",
  journal =	 JCSS,
  year =	 1973,
  volume =	 7,
  number =	 4,
  pages =	 "448--461"
}

@Book{CormenLR90,
  author = 	 "Thomas H. Cormen and Charles E. Leiserson and Ronald L. Rivest",
  title = 	 "Introduction to Algorithms",
  publisher = 	 "MIT Press and McGraw-Hill",
  year = 	 1990,
  series =	 "MIT Electrical Engineering and Computer Science Series",
  address =	 "Cambridge, Massachusetts and New York, New York"
}


@InProceedings{AjtaiKS83,
  author = 	 "M. Ajtai and J. Koml\'os and E. Szemer\'edi",
  title = 	 "An {$O(n \log n)$} sorting network",
  pages =	 "1--9",
  booktitle =	 "Proceedings of the Fifteenth Annual ACM Symposium on
		  Theory of Computing",
  year =	 1983
}

@Book{Siebert86,
  author = 	 "William McC. Siebert",
  title = 	 "Circuits, Signals, and Systems",
  publisher = 	 "MIT Press and McGraw-Hill",
  year = 	 1986,
  series =	 "MIT Electrical Engineering and Computer Science Series",
  address =	 "Cambridge, Massachusetts and New York, New York"
}

@Book{SenturiaW75,
  author = 	 "Stephen D. Senturia and Bruce D. Wedlock",
  title = 	 "Electronic Circuits and Applications",
  publisher = 	 "John Wiley \& Sons",
  year = 	 1975,
  address =	 "New York, New York"
}

@Book{KernighanR88,
  author = 	 "Brian W. Kernighan and Dennis M. Ritchie",
  title = 	 "The {C} Programming Language",
  publisher = 	 "Prentice Hall",
  year = 	 1988,
  series =	 "Software Series",
  address =	 "Englewood Cliffs, New Jersey",
  edition =	 "Second"
}

@Manual{Tansy89,
  title = 	 "{SPARC}station1 {Sun} System User's Guide",
  author =	 "Barbara Tansy",
  organization = "Sun Microsystems",
  year =	 1989
}

@TechReport{Stephen92,
  author = 	 "Graham A Stephen",
  title = 	 "String Search",
  institution =  "University College of North Wales",
  year = 	 1992,
  number =	 "TR-92-gas-01",
  address =	 "Bangor, Gwynedd, UK",
  month =	 Oct
}


@TechReport{Spertus91,
  author = 	 "Ellen Spertus",
  title = 	 "Why are there so few female computer scientists?",
  institution =  "MIT AI Laboratory",
  year = 	 1991,
  number =	 1315,
  address =	 "Cambridge, MA",
  month =	 aug
}

@TechReport{DeHonEKM93,
  author = 	 "Andr\'e DeHon and Ian Eslick and Thomas Knight and John Mallery",
  title = 	 "Prospects for a smart compiler",
  institution =  mit,
  year = 	 1993,
  type =	 "Transit Note",
  number =	 87,
  address =	 "Cambridge, MA",
  month =	 Jun # "~27,"
}

@Book{LewisC81,
  author = 	 "Harry R. Lewis and Christos H. Papadimitriou",
  title = 	 "Elements of the Theory of Computation",
  publisher = 	 "Prentice-Hall",
  year = 	 1981,
  series =	 "Prentice-Hall Software Series",
  address =	 "Englewood Cliffs, New Jersey"
}

@Manual{CoreyMJF87,
  title = 	 "Explorer Coding Style Standards",
  author =	 "Stephen M. Corey and Penny Muncaster-Jewell and Bob Faulkner",
  organization = "Texas Instruments Computer Science Center",
  year =	 1987,
  month =	 Jul # "~28,",
  note =	 "TI Internal Data"
}

% The braces around {Kant <...>} help BibTeX understand that the author's
% last name is not an email address.
@Unpublished{Kant91,
  author = 	 "Elaine {Kant {\tt <kant@slcs.slb.com>}}",
  title = 	 "Finding a Good Job",
  note = 	 "Electronic mail to {\tt systers@pa.dec.com} regarding
		  techniques for (female) PhD graduates searching for a
		  first academic or corporate position."
}

@Unpublished{Klunder88,
  author = 	 "Doug Klunder",
  title = 	 "Naming Conventions ({Hungarian})",
  note = 	 "Internal Microsoft document",
  year =	 1988,
  month =	 Jan # "~18,"
}

@Article{Zloof77,
  author = 	 "Mosh{\'e} M. Zloof",
  title = 	 "Query-by-{Example}: a data base language",
  journal =	 "IBM Systems Journal",
  year =	 1977,
  volume =	 16,
  number =	 4,
  pages =	 "324--343"
}

% Not sure about this reference.
@InProceedings{Zloof79,
  author = 	 "M. M. Zloof",
  title = 	 "Query-by-{Example} --- language design considerations",
  pages =	 "355--363",
  booktitle =	 "Man/Computer Communication",
  year =	 1979
}

@TechReport{WrightC93,
  author = 	 "Andrew K. Wright and Robert Cartwright",
  title = 	 "A practical soft type system for {Scheme}",
  institution =  "Rice University Department of Computer Science",
  year = 	 1993,
  number =	 "TR93-218",
  address =	 "Houston, TX",
  month =	 Dec # "~6,"
}

@Misc{DesJardins94,
  author =	 "Marie desJardins",
  title =	 "How to be a good (graduate student / advisor)",
  year =	 1994,
  month =	 Mar,
  note =	 "marie@erg.sri.com"
}

@Manual{MITScheme7.3,
  title = 	 "{MIT} {Scheme} Reference Manual",
  author =	 "Chris Hanson",
  organization = "MIT Scheme Team",
  address =	 "Cambridge, MA",
  edition =	 "1.41 beta for Scheme release 7.3",
  year =	 1993,
  month =	 Dec # "~6,"
}


@Manual{GNUEmacs19.26,
  title = 	 "{GNU} {Emacs} Manual",
  author =	 "Richard Stallman",
  organization = "Free Software Foundation",
  address =	 "Cambridge, MA",
  edition =	 "Tenth",
  year =	 1994,
  month =	 Jul,
  note =	 "ISBN 1-882114-03-5"
}


@Misc{emacs,
  key = "Emacs",
  title = "Emacs",
  howpublished = "\url{http://www.emacs.org}",
  URL = "http://www.emacs.org"
}



@Misc{Kenner95,
  author =	 "Richard Kenner",
  title =	 "Targetting and retargetting the {GNU} {C} compiler",
  howpublished = "POPL '95 tutorial notes",
  year =	 1995,
  month =	 jan # "~16,"
}




@InProceedings{KautzS96,
  author = 	 "Henry Kautz and Bart Selman",
  title = 	 "Pushing the envelope: planning, propositional logic, and
		  stochastic search",
  booktitle = 	 "Proc.\ AAAI-96",
  year =	 1996,
  address =	 "Portland, OR",
  pages =	 "1194--1201"
}

@InProceedings{KautzSM96,
  author = 	 "Henry Kautz and David McAllester and Bart Selman",
  title= 	 "Encoding plans in propositional logic", 
  booktitle = 	 "Proc. KR-96",
  year =	 1996
}





@InProceedings{Pattis88,
  author = 	 "Richard E. Pattis",
  title = 	 "Textbook errors in binary search",
  booktitle = 	 "{ACM} {SIGCSE} Technical Symposium on Computer Science Education",
  pages =	 "190--194",
  year =	 1988,
  OPTaddress = 	 "",
  OPTmonth = 	 "",
  OPTorganization = "",
  OPTpublisher = ""
}



@Article{Lebeck:1994:CPS,
  author =       "Alvin R. Lebeck and David A. Wood",
  title =        "Cache Profiling and the {SPEC} Benchmarks: {A} Case
                 Study",
  journal =      "Computer",
  volume =       "27",
  number =       "10",
  pages =        "15--26",
  month =        oct,
  year =         "1994",
  coden =        "CPTRB4",
  ISSN =         "0018-9162",
  bibdate =      "Mon Feb 3 07:28:57 MST 1997",
  abstract =     "A vital tool-box component, the CProf cache profiling
                 system lets programmers identify hot spots by providing
                 cache performance information at the source-line and
                 data-structure level.",
  acknowledgement = ack-nhfb,
  affiliation =  "Dept. of Comput. Sci., Wisconsin Univ., Madison, WI,
                 USA",
  affiliationaddress = "Madison, WI, USA",
  classification = "722.1; 722.4; 723.1; 723.1.1; 723.2; 921.6; C5470
                 (Performance evaluation and testing); C6115
                 (Programming support); C6150G (Diagnostic, testing,
                 debugging and evaluating systems)",
  journalabr =   "Computer",
  keywords =     "Algorithms; Cache mappings; Cache performance
                 information; Cache performance profiling; Code
                 converters; Computer systems programming; Computer
                 workstations; CProf cache profiling system; Cycle time
                 gap; Data transfer; Data-structure; Digital arithmetic;
                 Execution time profiling tools; Fortran (programming
                 language); Main memory; Mathematical models; Memory
                 reference patterns; Parallel processing systems;
                 Problematic code sections; Program compilers; Program
                 processors; Program transformations; Software package
                 CProf; Source-line; Spatial locality; SPEC benchmarks;
                 Storage allocation (computer); Systems analysis;
                 Traversing versions",
  thesaurus =    "Buffer storage; Performance evaluation; Software
                 tools; System monitoring",
}


@Article{Lampson:1984:HCS,
  author =       "Butler W. Lampson",
  title =        "Hints for Computer System Design",
  journal =      "IEEE Software",
  volume =       "1",
  number =       "1",
  pages =        "11--28",
  month =        jan,
  year =         "1984",
  coden =        "IESOEG",
  ISSN =         "0740-7459",
  bibdate =      "Sat Jan 25 07:35:26 MST 1997",
  acknowledgement = ack-nhfb,
  classification = "722; 723",
  journalabr =   "IEEE Software",
  keywords =     "computer programming --- Computer Interfaces; computer
                 systems, digital; prototypes; system speed",
}


@Article{Bamberger:1995:SPP,
  author =       "Judy Bamberger and James Hook",
  title =        "Software Process Practicum: Lessons in Software
                 Quality and Leadership",
  journal =      "Ada User Journal",
  volume =       "16",
  number =       "4",
  pages =        "205--211",
  month =        dec,
  year =         "1995",
  coden =        "AUJOET",
  ISSN =         "0268-652X",
  bibdate =      "Mon Sep 8 18:43:50 MDT 1997",
  abstract =     "This paper describes a Software Process Practicum
                 covering Software Quality and Leadership topics taught
                 at the Oregon Graduate Institute during the Fall term,
                 1994. The Practicum is a result of a partnership
                 between industry and academia, quality practitioner and
                 theoretically oriented professor. It is structured to
                 meet both short-term training and long-term education
                 needs. The Software Process Practicum is a unique and
                 highly effective course covering the `hard' issues
                 (quality processes), the `soft' issues (social
                 processes), and specific techniques that require
                 merging the two. The students who took the first
                 offering of the Software Process Practicum have used in
                 their work environment the concepts and techniques we
                 taught in the classroom. They are continuing to
                 demonstrate objective evidence of improvement on
                 personal and organizational processes, which is visible
                 to many of their managers and Vice Presidents.",
  acknowledgement = ack-nhfb,
  affiliation =  "RESULTS - Partners in Process Improvement",
  affiliationaddress = "Portland, OR, USA",
  classification = "723.1; 723.5; 901.1.1; 901.2; 903.2; 912.4; C0220
                 (Computing education and training); C6110B (Software
                 engineering techniques)",
  corpsource =   "Partners in Process Improvement, Portland, OR, USA",
  journalabr =   "Ada User J",
  keywords =     "computer science education; Computer software;
                 Education; education; educational course; educational
                 courses; human factors; leadership; Models;
                 organizational process; personal process; Personnel
                 training; Professional aspects; social processes;
                 Societies and institutions; Software engineering;
                 Software process practicum; Software Process Practicum;
                 software quality; Software quality and leadership;
                 Supervisory personnel; Technical presentations;
                 training",
  pubcountry =   "Netherlands",
  treatment =    "P Practical",
}

@TechReport{ncstrl.ogi_cse//CSE-97-006,
  type =         "Technical Report",
  number =       "CSE-97-006",
  institution =  "Oregon Graduate Institute of Science and Technology",
  title =        "Teaching Software Quality and Leadership: Experiences
                 and Successes",
  month =        sep # " 11,",
  year =         "1997",
  bibdate =      "September 13, 97",
  url =          "ftp://cse.ogi.edu/pub/tech-reports/1997/97-006.ps.gz",
  author =       "Judy Bamberger and James Hook",
  abstract =     "Is it possible to teach software quality and
                 leadership concepts and skills at the graduate level?
                 Can this be done simultaneously within the nurturing
                 environment of the classroom and the risky world of
                 industry? Is it possible to provide students with
                 enough skills and techniques to demonstrate immediate
                 results and, at the same time, provide them with enough
                 background and concepts that they become intelligent
                 consumers and decision makers when it comes to software
                 quality issues? The Software Process Practicum: Lessons
                 in Software Quality and Leader-ship, taught at the
                 Oregon Graduate Institute fall term 1994 - 1996,
                 provides a clear demonstration that the answer is an
                 emphatic, {"}YES!{"} The Software Process Practicum won
                 the 1996 Software Quality Excellence Award offered by
                 the Pacific Northwest Software Quality Conference,
                 confirming that it is not only possible, but that it
                 can be done well, and that a university course can
                 provide significant opportunities to its students to
                 make a difference in the professional community. This
                 paper covers the following areas: * The background of
                 the Software Process Practicum and the premises on
                 which it is designed * The overall Practicum framework
                 and modules taught * An overview of the Software Skills
                 and Competency Model on which the Practicum is based *
                 The impact the course has had on some of our students
                 and the results that they, and the organizations for
                 which they work, are seeing * Future directions",
}

@Article{ChoiCytronFerrante94,
  key =          "Choi et al.",
  author =       "J.-D. Choi and R. Cytron and J. Ferrante",
  title =        "On the Efficient Engineering of Ambitious Program
                 Analysis",
  journal =      "IEEE Transactions on Software Engineering",
  pages =        "105--114",
  volume =       "20",
  number =       "2",
  month =        feb,
  year =         "1994",
  location =     "CMU E \&{} S Library",
}



@Unpublished{PittsS93,
  author = 	 "Andrew Pitts and Ian Stark",
  title = 	 "Observable properties of higher order functions that
		  dynamically create local names, or:  What's {\em new}?",
  note = 	 "Distributed electronically",
  year =	 1993,
  month =	 May
}







@Book{Winston92:AI,
  author =	 "Patrick Henry Winston",
  title = 	 "Artificial Intelligence",
  publisher = 	 "Addison-Wesley",
  year = 	 1992,
  OPTaddress = 	 "",
  edition =	 "third"
}




@InProceedings{PaiDZ99,
  author = 	 "Vivek S. Pai and Peter Druschel and Willy Zwaenepoel",
  title = 	 "Flash: An efficient and portable {Web} server",
  booktitle =	 USENIX99,
  pages =	 "199--212",
  year =	 1999,
  address =	 USENIX99addr,
  month =	 USENIX99date
}



@article{schapire90strength,
    author = "Robert E. Schapire",
    title = "The strength of weak learnability",
    journal = "Machine Learning",
    volume = "5",
    pages = "197--227",
    year = "1990",
    url = "citeseer.nj.nec.com/schapire90strength.html"
}


@InProceedings{BagnellS2001,
  author = 	 "J. Andrew Bagnell and Jeff Schneider",
  title = 	 "Autonomous helicopter control using reinforcement
                  learning policy search methods",
  booktitle =	 "International Conference on Robotics and Automation",
  pages =	 "1615--1620",
  year =	 2001,
  address =	 "Seoul, Korea",
  month =	 may # "~21--26,"
}


@Article{KaelblingLM96,
  author = 	 "Leslie Pack Kaelbling and Michael L. Littman and Andrew
                  W. Moore",
  title = 	 "Reinforcement learning:  A survey",
  journal = 	 "Journal of Artificial Intelligence Research",
  year = 	 1996,
  volume =	 4,
  pages =	 "237--285",
  abstract =
   "This paper surveys the field of reinforcement learning from a
    computer-science perspective. It is written to be accessible to researchers
    familiar with machine learning. Both the historical basis of the field and
    a broad selection of current work are summarized. Reinforcement learning is
    the problem faced by an agent that learns behavior through trial-and-error
    interactions with a dynamic environment. The work described here has a
    resemblance to work in psychology, but differs considerably in the details
    and in the use of the word ``reinforcement.'' The paper discusses central
    issues of reinforcement learning, including trading off exploration and
    exploitation, establishing the foundations of the field via Markov decision
    theory, learning from delayed reinforcement, constructing empirical models
    to accelerate learning, making use of generalization and hierarchy, and
    coping with hidden state. It concludes with a survey of some implemented
    systems and an assessment of the practical utility of current methods for
    reinforcement learning."
}


@Book{SuttonB98,
  author =	 "Richard S. Sutton and Andrew G. Barto",
  title = 	 "Reinforcement Learning: An Introduction",
  publisher = 	 "MIT Press",
  year = 	 1998,
  address =	 "Cambridge, MA, USA"
}

@article{HastieT96,
 author = {Trevor Hastie and Robert Tibshirani},
 title = {Discriminant adaptive nearest neighbor classification},
 journal = {IEEE Trans. Pattern Anal. Mach. Intell.},
 volume = {18},
 number = {6},
 year = {1996},
 issn = {0162-8828},
 pages = {607--616},
 doi = {http://dx.doi.org/10.1109/34.506411},
 publisher = {IEEE Computer Society},
 }


@Book{Josuttis1999,
  editor =	 "Nicolai M. Josuttis",
  title = 	 "The C++ Standard Library: A Tutorial and Reference",
  publisher = 	 "Addison-Wesley Professional",
  year = 	 1999,
  NEEDaddress = 	 ""
}

@Book{PlaugerSLM2000,
  author =	 "P.J. Plauger and Alexander A. Stepanov and Meng Lee and
                  David R. Musser",
  title = 	 "The C++ Standard Template Library",
  publisher = 	 "Prentice Hall PTR",
  year = 	 2000,
  NEEDaddress = 	 ""
}

@InProceedings{AllenCLMS2004,
  author = 	 "Eric Allen and David Chase and Victor Luchangco and
                  Jan-Willem Maessen and Guy L. {Steele Jr.}",
  title = 	 "Object-oriented units of measurement",
  booktitle =	 OOPSLA2004,
  pages =	 "384--403",
  year =	 2004,
  address =	 OOPSLA2004addr,
  month =	 OOPSLA2004date,
  abstract =
   "Programs that manipulate physical quantities typically represent these
    quantities as raw numbers corresponding to the quantities' measurements in
    particular units (e.g., a length represented as a number of meters). This
    approach eliminates the possibility of catching errors resulting from
    adding or comparing quantities expressed in different units (as in the Mars
    Climate Orbiter error [11]), and does not support the safe comparison and
    addition of quantities of the same dimension. We show how to formulate
    dimensions and units as classes in a nominally typed object-oriented
    language through the use of statically typed metaclasses. Our formulation
    allows both parametric and inheritance polymorphism with respect to both
    dimension and unit types. It also allows for integration of encapsulated
    measurement systems, dynamic conversion factors, declarations of scales
    (including nonlinear scales) with defined zeros, and nonconstant exponents
    on dimension types. We also show how to encapsulate most of the ``magic
    machinery'' that handles the algebraic nature of dimensions and units in a
    single meta-class that allows us to treat select static types as generators
    of a free abelian group.",
}



@InProceedings{XieA2005,
  author = 	 "Yichen Xie and Alex Aiken",
  title = 	 "Scalable error detection using boolean satisfiability",
  booktitle =	 POPL2005,
  pages = 	 "351--363",
  year =	 2005,
  address =	 POPL2005addr,
  month =	 POPL2005date
}




@InProceedings{AikenBDDHH2007,
  author = 	 "Aiken, Alex and Bugrara, Suhabe and Dillig, Isil and Dillig, Thomas and Hackett, Brian and Hawkins, Peter",
  title = 	 "An Overview of the {Saturn} Project",
  booktitle = PASTE2007,
  year = 	 2008,
  pages = 	 "43--48",
  month = 	 PASTE2007date,
  address = 	 PASTE2007addr,
}





@InProceedings{CobbeF2005,
  author = 	 "Richard Cobbe and Matthias Felleisen",
  title = 	 "Environmental acquisition revisited",
  booktitle =	 POPL2005,
  pages =	 "14--25",
  year =	 2005,
  address =	 POPL2005addr,
  month =	 POPL2005date
}


@Article{SleatorT85,
  author = 	 "Daniel Dominic Sleator and Robert Endre Tarjan",
  title = 	 "Self-adjusting binary search trees",
  journal = 	 JACM,
  year = 	 1985,
  volume =	 32,
  number =	 3,
  pages =	 "652--686",
  month =	 jul
}


@InProceedings{BallL96,
  author = 	 "Thomas Ball and James R. Larus",
  title = 	 "Efficient path profiling",
  booktitle =	 "MICRO 29: Proceedings of the 29th annual ACM/IEEE international symposium on Microarchitecture",
  pages =	 "46--57",
  year =	 1996,
  address =	 "Paris, France",
  month =	 dec # "~2--4,",
  abstract =
   "A path profile determines how many times each acyclic path in a routine
    executes. This type of profiling subsumes the more common basic block and
    edge profiling, which only approximate path frequencies. Path profiles have
    many potential uses in program performance tuning, profile-directed
    compilation, and software test coverage. This paper describes a new
    algorithm for path profiling. This simple, fast algorithm selects and
    places profile instrumentation to minimize run-time overhead. Instrumented
    programs run with overhead comparable to the best previous profiling
    techniques. On the SPEC95 benchmarks, path profiling overhead averaged 31\%,
    as compared to 16\% for efficient edge profiling. Path profiling also
    identifies longer paths than a previous technique, which predicted paths
    from edge profiles (average of 88, versus 34 instructions). Moreover,
    profiling shows that the SPEC95 train input datasets covered most of the
    paths executed in the ref datasets.",
}

@Misc{CTAS,
  title =        "Center-{TRACON} automation system",
  key =          "CTAS",
  note =         "\url{http://www.ctas.arc.nasa.gov}",
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Development tools
%%%

@Misc{idea,
  key = "IDEA",
  title = "{JetBrains IntelliJ IDEA}",
  howpublished = "\url{http://www.intellij.com/idea/}",
  URL = "http://www.intellij.com/idea/"
}


@Misc{eclipse,
  key = "Eclipse",
  title = "Eclipse Project",
  howpublished = "\url{http://www.eclipse.org/}",
  URL = "http://www.eclipse.org/"
}

@Misc{codeguide,
  key =		 "CodeGuide",
  title =	 "{OmniCore} {CodeGuide}",
  howpublished = "\url{http://www.omnicore.com/codeguide.htm}",
  URL = "http://www.omnicore.com/codeguide.htm"
}


@Misc{Agitar,
  title = "Agitar Software",
  key = "Agitar",
  note = "\url{http://www.agitar.com/}",
}



% See http://research.microsoft.com/~akenn/units/index.html
@PhdThesis{Kennedy96,
  author = 	 {Andrew Kennedy},
  title = 	 {Programming Languages and Dimensions},
  school = 	 {University of Cambridge},
  year = 	 1996,
  month =	 {April}
}

@Misc{RNAfoldVienna,
  author =	 {Ivo Hofacker},
  title =	 {Vienna {RNA} Package},
  howpublished = {\url{http://www.tbi.univie.ac.at/~ivo/RNA/}}
}



@InCollection{299104,
 author = {Thorsten Joachims},
 title = {Making large-scale support vector machine learning practical},
 booktitle = {Advances in kernel methods: support vector learning},
 year = {1999},
 isbn = {0-262-19416-3},
 pages = {169--184},
 publisher = {MIT Press},
 address = {Cambridge, MA, USA},
 }

@Manual{CC01a,
  author =	 {Chih-Chung Chang and Chih-Jen Lin},
  title =	 {{LIBSVM}: a library for support vector machines},
  year =	 {2001},
  note =	 {Software available at \url{http://www.csie.ntu.edu.tw/~cjlin/libsvm}}
}



@Book{Meyer97,
  author = 	 "Bertrand Meyer",
  title = 	 "Object-Oriented Software Construction",
  publisher = 	 "Prentice Hall",
  year = 	 1997,
  edition = 	 "second",
}







@Book{EiffelIsoStandard2006,
  editor = 	 "{ECMA Technical Group TG49-TG4 (Eiffel) of ECMA Technical Committee 49 (Programming Languages)}",
  title = 	 "Standard ECMA-367 and ISO/IEC 25436:2006, Eiffel Analysis, Design and Programming Language",
  publisher = 	 "ECMA International and International Standards Organization",
  year = 	 2006,
  address = 	 "Geneva",
  month = 	 jun,
}






@InProceedings{ByteCode,
 author = {Don Lance and Roland H. Untch and Nancy J. Wahl},
 title = {Bytecode-based {Java} program analysis},
 booktitle = {ACM-SE 37: Proceedings of the 37th annual Southeast regional conference (CD-ROM)},
 year = {1999},
 isbn = {1-58113-128-3},
 pages = {14},
 doi = {http://doi.acm.org/10.1145/306363.306382},
 }




@InProceedings{TanM2007,
  author = 	 "Gang Tan and Greg Morrisett",
  title = 	 "{ILEA}: Inter-Language Analysis across {Java} and {C}",
  booktitle = OOPSLA2007,
  year = 	 2007,
  address = 	 OOPSLA2007addr,
  month = 	 OOPSLA2007date,
}


@article{Wilhelm96,
 author = {Reinhard Wilhelm},
 title = {Program analysis---a toolmaker's perspective},
 journal = {ACM Comput. Surv.},
 year = {1996},
 issn = {0360-0300},
 pages = {177},
 doi = {http://doi.acm.org/10.1145/242224.242454},
 publisher = {ACM},
 address = {New York, NY, USA},
}


@Book{BrooksSutherlandReport,
  ALTauthor =    {},
  editor =    {National Research Council},
  title =        {Evolving the High Performance Computing and Communications Initiative to Support the Nation's Information Infrastructure},
  publisher =    {National Academy Press},
  year =         {1995},
  OPTkey =       {},
  OPTvolume =    {},
  OPTnumber =    {},
  series =    {Computer Science and Telecommunication Board (CSTB)},
  OPTaddress =   {},
  OPTedition =   {},
  OPTmonth =     {},
  OPTnote =      {},
  OPTannote =    {}
}




@InCollection{BasiliCR94,
  author = 	 "Victor R. Basili and Gianluigi Caldiera and H. Dieter Rombach",
  title = 	 "Goal Question Metric Paradigm",
  booktitle = 	 "Encyclopedia of Software Engineering",
  pages = 	 "528--532",
  publisher = "Wiley",
  year = 	 1994,
}




@InProceedings{SrivastavaGF2010,
  author = 	 "Srivastava, Saurabh and Gulwani, Sumit and Foster, Jeffrey S.",
  title = 	 "From program verification to program synthesis",
  booktitle = POPL2010,
  pages = 	 "313--326",
  year = 	 2010,
  address = 	 POPL2010addr,
  month = 	 POPL2010date,
  doi = {http://doi.acm.org/10.1145/1706299.1706337},
}


@InProceedings{ShachamVY2009,
  author = 	 "Shacham, Ohad and Vechev, Martin and Yahav, Eran",
  title = 	 "Chameleon: adaptive selection of collections",
  booktitle = PLDI2009,
  pages = 	 "408--418",
  year = 	 2009,
  address = 	 PLDI2009addr,
  month = 	 PLDI2009date,
  abstract =
   "Languages such as Java and C#, as well as scripting languages like Python,
    and Ruby, make extensive use of Collection classes.
    \par
    A collection implementation represents a fixed choice in the dimensions of
    operation time, space utilization, and synchronization. Using the
    collection in a manner not consistent with this fixed choice can cause
    significant performance degradation.
    \par
    In this paper, we present Chameleon, a low-overhead automatic tool that
    assists the programmer in choosing the appropriate collection
    implementation for her application. During program execution, Chameleon
    computes elaborate trace and heap-based metrics on collection
    behavior. These metrics are consumed on-thefly by a rules engine which
    outputs a list of suggested collection adaptation strategies. The tool can
    apply these corrective strategies automatically or present them to the
    programmer.
    \par
    We have implemented Chameleon on top of a IBM's J9 production JVM, and
    evaluated it over a small set of benchmarks. We show that for some
    applications, using Chameleon leads to a significant improvement of the
    memory footprint of the application.",
}




@InProceedings{LiuCHY2006,
  author = 	 "Liu, Chao and Chen, Chen and Han, Jiawei and Yu, Philip S.",
  title = 	 "{GPLAG}: Detection of software plagiarism by program dependence graph analysis",
  booktitle = "KDD '06: Proceedings of the 12th ACM SIGKDD international conference on Knowledge discovery and data mining",
  pages = 	 "872--881",
  year = 	 2006,
  address = 	 "Philadelphia, PA, USA",
  month = 	 aug,
}


@InProceedings{Krinke2001,
  author = 	 "Krinke, Jens",
  title = 	 "Identifying similar code with {Program} {Dependence} {Graphs}",
  booktitle = "WCRE '01: Proceedings of the Eighth Working Conference on Reverse Engineering (WCRE'01)",
  pages = 	 "301-309",
  year = 	 2001,
  address = 	 "Stuttgart, Germany",
  month = 	 oct,
}


@InProceedings{KomondoorH2001,
  author = 	 "Komondoor, Raghavan and Horwitz, Susan",
  title = 	 "Using slicing to identify duplication in source code",
  booktitle = SAS2001,
  pages = 	 "40--56",
  year = 	 2001,
  address = 	 SAS2001addr,
  month = 	 SAS2001date,
}






@Article{Ioannidis2005,
  author = 	 "John P. A. Ioannidis",
  title = 	 " Why Most Published Research Findings Are False.  2(8): e124. d",
  journal = 	 "PLoS Medicine",
  year = 	 2005,
  volume = 	 2,
  number = 	 8,
  pages = 	 "696--701",
  month = 	 aug,
  abstract =
   "There is increasing concern that most current published research findings
    are false. The probability that a research claim is true may depend on
    study power and bias, the number of other studies on the same question,
    and, importantly, the ratio of true to no relationships among the
    relationships probed in each scientific field. In this framework, a
    research finding is less likely to be true when the studies conducted in a
    field are smaller; when effect sizes are smaller; when there is a greater
    number and lesser preselection of tested relationships; where there is
    greater flexibility in designs, definitions, outcomes, and analytical
    modes; when there is greater financial and other interest and prejudice;
    and when more teams are involved in a scientific field in chase of
    statistical significance. Simulations show that for most study designs and
    settings, it is more likely for a research claim to be false than
    true. Moreover, for many current scientific fields, claimed research
    findings may often be simply accurate measures of the prevailing bias. In
    this essay, I discuss the implications of these problems for the conduct
    and interpretation of research.",
}




@InProceedings{Kosorukoff2000,
  author = 	 "Alexander Kosorukoff",
  title = 	 "Social classification structures: Optimal decision making in an organization",
  booktitle = "Genetic and Evolutionary Computation Conference (GECCO)",
  pages = 	 "175-178",
  year = 	 2000,
}






@Article{Turing1936,
  author = 	 "Alan Turing",
  title = 	 "On computable numbers, with an application to the {Entscheidungsproblem}",
  journal = 	 "Proceedings of the London Mathematical Society",
  year = 	 1936,
  volume = 	 2,
  number = 	 42,
  pages = 	 "230--265",
}


@InProceedings{BatemanMGGMB2010,
  author = 	 "Bateman, Scott and Mandryk, Regan L. and Gutwin, Carl and Genest, Aaron and McDine, David and Brooks, Christopher",
  title = 	 "Useful junk?  The effects of visual embellishment on comprehension and memorability of charts",
  booktitle = "CHI '10",
  pages = 	 "2573--2582",
  year = 	 2010,
  address = 	 "Atlanta, Georgia, USA",
  NEEDmonth = 	 "*",
  abstract =
   "Guidelines for designing information charts (such as bar charts) often
    state that the presentation should reduce or remove 'chart junk' - visual
    embellishments that are not essential to understanding the data. In
    contrast, some popular chart designers wrap the presented data in detailed
    and elaborate imagery, raising the questions of whether this imagery is
    really as detrimental to understanding as has been proposed, and whether
    the visual embellishment may have other benefits. To investigate these
    issues, we conducted an experiment that compared embellished charts with
    plain ones, and measured both interpretation accuracy and long-term
    recall. We found that people's accuracy in describing the embellished
    charts was no worse than for plain charts, and that their recall after a
    two-to-three-week gap was significantly better. Although we are cautious
    about recommending that all charts be produced in this style, our results
    question some of the premises of the minimalist approach to chart design."
}


@InProceedings{AliL2013,
  author = 	 "Ali, Karim and Lhot\'{a}k, Ond\v{r}ej",
  authorASCII =  "Ali, Karim and Lhotak, Ondrej",
  title = 	 "Averroes: Whole-program analysis without the whole program",
  booktitle = ECOOP2013,
  year = 	 2013,
  pages = 	 "378--400",
  month = 	 ECOOP2013date,
  address = 	 ECOOP2013addr,
}




% LocalWords: InCollection KaehlerK Kaehler Krasner Booktitle Parberry PocketPC
% LocalWords: Smalltalk SIGACT LaTeX'ed ftp EATCS apr BlumFPRT Blum os Trompler
% LocalWords: Rivest Tarjan CormenLR Cormen Leiserson CLR AjtaiKS Koml hlh Minh
% LocalWords: InProceedings Ajtai Szemer edi booktitle AKS Siebert McC
% LocalWords: SenturiaW Senturia KernighanR Kernighan SPARC TechReport Wegner
% LocalWords: Microsystems TR Gwynedd UK NJ Spertus aug DeHonEKM Andr Christoph
% LocalWords: DeHon Eslick Mallery mit LewisC Christos Papadimitriou TromplerMW
% LocalWords: CoreyMJF Muncaster Klunder Zloof OPTcrossref OPTkey TX Muhlhauser
% LocalWords: OPTyear OPTmonth OPTannote xample WrightC untypable Misc ICNEE CC
% LocalWords: DesJardins desJardins MITScheme GNUEmacs Stallman ISBN Lugano CPS
% LocalWords: Kenner howpublished jan KautzS Kautz Selman Proc AAAI pp RattoSTG
% LocalWords: KautzSM McAllester erie Gouranton etayer Pattis SIGCSE MulhauserT
% LocalWords: Lebeck oct coden CPTRB ISSN bibdate CProf ack nhfb Sci Ratto CSCL
% LocalWords: Comput Univ WI affiliationaddress journalabr Lampson dec Truong
% LocalWords: IESOEG Practicum AUJOET Sep corpsource practicum CSE sep GTCO PRS
% LocalWords: pubcountry url ChoiCytronFerrante Choi Cytron Ferrante InterWrite
% LocalWords: feb CMU FSSA Yannis Smaragdakis Sig BerlekampCG Elwyn OO LLC JCSS
% LocalWords: Berlekamp Rhode Earley UMI PittsS Cousot Flemming Weise Mosh CTAS
% LocalWords: Abramsky Hankin Womble UML bytecodes Waingold PaiDZ Pai
% LocalWords: Vivek Druschel Zwaenepoel addr schapire learnability jun csdl Ivo
% LocalWords: BagnellS Bagnell KaelblingLM Kaelbling Littman SuttonB Hofacker
% LocalWords: Barto HastieT Hastie Tibshirani AllenCLMS Luchangco co RNA isbn
% LocalWords: Maessen metaclasses abelian standalone OPTaddress doi ClassInHand
% LocalWords: JetBrains IntelliJ codeguide CodeGuide OmniCore Masi Yue Thorsten
% LocalWords: LeisersonMRY Resto ASEE intersession postactivity Meng Joachims
% LocalWords: Josuttis Nicolai NEEDaddress PlaugerSLM Plauger Stepanov Chih Jen
% LocalWords: Musser PTR nonconstant XieA Yichen NEEDpages followon authorASCII
% LocalWords: CobbeF Cobbe Felleisen int containee PLT Redex SleatorT LIBSVM
% LocalWords: Sleator Endre JACM jul BallL Larus Microarchitecture NRC Flon's
% LocalWords: PhdThesis UWCSE SiegelSC Siegel INTICE BonwellE Bonwell Eison
% LocalWords: BransfordBC Bransford ChickeringG Chickering Zelda Gamson AAHE
% LocalWords: ITiCSE McKeachie Houghton Mifflin Kogan FelderS SpringerSD Untch
% LocalWords: Stanne ActiveClass eInstruction TurningTechnologies Informatica
% LocalWords: RNAfoldVienna ByteCode Wahl JVML untranslatable TRACON Witold
